package fun.werfamily.wf.order.core.domain.service;


import fun.werfamily.wf.order.core.domain.dto.result.CartItemDTO;
import fun.werfamily.wf.order.core.domain.dto.result.OrderGoodsCartDTO;

import java.util.List;

/**
 * Created with IntelliJ IDEA.
 *
 * @Author: Mr.WenMing Zhang
 * @Date: 2023-04-24 21:30
 * @Description:
 */
public interface OrderGoodsCartService {
    /**
     * 购物车详情
     * @return
     */
    OrderGoodsCartDTO getGoodsCartItem();

    /**
     * 商品加入购物车
     * @param cartItemDTO
     * @return
     */
    Boolean addGoodsCartItem(CartItemDTO cartItemDTO);

    /**
     * 修改购物车商品数量
     * @param cartItemDTO
     * @return
     */
    Boolean updateGoodsCartItem(CartItemDTO cartItemDTO);

    /**
     * 删除购物车商品
     * @param skuCodes
     * @return
     */
    Boolean removeGoodsCartItem(List<String> skuCodes);

    /**
     * 清空购物车
     * @return
     */
    Boolean removeAllGoodsCartItem();

    /**
     * 统计购物车商品总数量
     * @return
     */
    Integer countCartItems();
}
